def convert_time_format():
    """地区时间格式转换器：支持8个国家的时间格式转换"""
    # 定义各地区时间格式模板（使用占位符）
    format_templates = {
        '中国': '{year}年{month}月{day}日 {hour}:{minute}:{second}',
        '美国': '{month}/{day}/{year} {hour}:{minute}:{second}',
        '英国': '{day}/{month}/{year} {hour}:{minute}:{second}',
        '德国': '{day}.{month}.{year} {hour}:{minute}:{second}',
        '俄罗斯': '{day}.{month}.{year} {hour}:{minute}:{second}',
        '澳大利亚': '{day}/{month}/{year} {hour}:{minute}:{second}',
        '法国': '{day}/{month}/{year} {hour}:{minute}:{second}',
        '加拿大': '{year}-{month}-{day} {hour}:{minute}:{second}'
    }
    
    # 显示支持的地区
    print("支持的地区：中国、美国、英国、德国、俄罗斯、澳大利亚、法国、加拿大")
    
    # 获取用户输入的时间信息
    try:
        # 输入日期部分
        year = input("请输入年份（例如：2023）：").strip()
        month = input("请输入月份（1-12）：").strip()
        day = input("请输入日期（1-31）：").strip()
        
        # 输入时间部分
        hour = input("请输入小时（0-23）：").strip()
        minute = input("请输入分钟（0-59）：").strip()
        second = input("请输入秒钟（0-59）：").strip()
        
        # 输入地区
        region = input("请输入地区（例如：中国）：").strip()
        
        # 验证地区是否支持
        if region not in format_templates:
            print(f"错误：不支持的地区 '{region}'，请从支持的地区中选择")
            return
        
        # 验证数字格式（基本验证）
        if not (year.isdigit() and month.isdigit() and day.isdigit() and
                hour.isdigit() and minute.isdigit() and second.isdigit()):
            print("错误：年、月、日、时、分、秒必须是数字")
            return
        
        # 转换为整数进行范围验证
        month_int = int(month)
        day_int = int(day)
        hour_int = int(hour)
        minute_int = int(minute)
        second_int = int(second)
        
        # 范围验证
        if not (1 <= month_int <= 12):
            print("错误：月份必须在1-12之间")
            return
        if not (1 <= day_int <= 31):  # 简化验证，实际可根据月份细化
            print("错误：日期必须在1-31之间")
            return
        if not (0 <= hour_int <= 23):
            print("错误：小时必须在0-23之间")
            return
        if not (0 <= minute_int <= 59):
            print("错误：分钟必须在0-59之间")
            return
        if not (0 <= second_int <= 59):
            print("错误：秒钟必须在0-59之间")
            return
        
        # 确保月份、日期、时分秒为两位数（补零）
        month = month.zfill(2)
        day = day.zfill(2)
        hour = hour.zfill(2)
        minute = minute.zfill(2)
        second = second.zfill(2)
        
        # 格式化时间字符串
        formatted_time = format_templates[region].format(
            year=year,
            month=month,
            day=day,
            hour=hour,
            minute=minute,
            second=second
        )
        
        # 输出结果
        print(f"\n{region}时间格式：{formatted_time}")
        
    except Exception as e:
        print(f"发生错误：{str(e)}")


if __name__ == "__main__":
    print("===== 地区时间格式转换器 =====")
    convert_time_format()